Prior to the advent and prolific use of distributed network environments such as the Internet, customer service sessions typically occurred over a teleconference between a customer service agent or service specialist and a customer. These teleconferences, which incidentally are still very popular today, are initiated by a customer placing a phone call to a customer service agent. The customer service agent's phone receives the call through a public-switched telephone network (PSTN). Many support centers handle a large volume of inquiries, usually by phone, for sales, information, customer support and other services. Typical support centers provide the ability to route multiple incoming, customer-initiated calls to agents which provide sales, information, or support on behalf of an entity interested in establishing or maintaining a relationship with the customer.
Modern support center systems selectively route incoming calls based on a number of factors such as the number called or dialed, the originating number, the queued sequence of the caller, the geographic location of the caller, accumulated caller history, and other relevant criteria. Once the system has evaluated the inbound caller's information, if any, the system searches for an available agent to service the call. Availability of agents may be dependent on any number of factors such as a skill area, level of that skill and/or a schedule of the agent. The number of agents within the contact center and available to the system may often be limited by the physical space available for the agents to operate. Contact centers have to deal with a limited number of agents to handle a large number of incoming customer calls. Typically, when an end user initiates a contact with the service center, the end user has to know or maintain the detailed information regarding how to reach people and/or obtain services from the service center. Often more decisions have to be made at the point in time and sometimes it is time consuming. There has been a lack of user friendly mechanisms to manage such information such that fewer time-consuming decisions are required during the time of contact to obtain the required service.